Alias Analysis with bddbddb
نویسنده
چکیده
Context-sensitive inclusion-based alias analysis is very precise but also computationally expensive. Whaley and Lam [5] recently proposed an approach based on Binary Decision Diagrams that scales to realistic Java programs. This report summarizes the approach, describes how the tool bddbddb that implements the analysis is used, and discusses how it can be employed to develop derived analyses based on alias information. In particular, a tainted analysis is developed that reveals both strengths and weaknesses of bddbddb as an analysis framework.
منابع مشابه
Using Datalog with Binary Decision Diagrams for Program Analysis
Many problems in program analysis can be expressed naturally and concisely in a declarative language like Datalog. This makes it easy to specify new analyses or extend or compose existing analyses. However, previous implementations of declarative languages perform poorly compared with traditional implementations. This paper describes bddbddb, a BDD-Based Deductive DataBase, which implements the...
متن کاملLearning Effective Bdd Variable Orders for Bdd-based Program Analysis
Software reliability and security are in jeopardy. As software has become ubiquitous and its capabilities have become more complex, code quality has been sacrificed in the race for the next ”killer app.” In response, program analysis researchers have mounted a revolution; they have developed new tools and methods, underpinned by traditional compilation techniques, in order to save software from...
متن کاملContext-sensitive Pointer Analysis Using Binary Decision Diagrams a Dissertation Submitted to the Department of Computer Science and the Committee on Graduate Studies of Stanford University in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy
This thesis shows that whole-program context-sensitive inclusion-based pointer analysis, a previously intractable problem, can be efficiently solved using binary decision diagrams. In addition, we show that it is possible to automatically translate from a high-level analysis specification written in Datalog into an efficient implementation using binary decision diagrams. We present the first sc...
متن کاملDatalog for Static Analysis
These are post-lecture notes for my February 7th presentation for HOPL 2017. The theme is the use of Datalog as a framework for building static analyses. The lecture covered the history of Datalog, who its original application to static analysis, and its later success. These notes are a bare-minimum transcription of my on-paper notes for the lecture. Better than nothing. Datalog for Static Anal...
متن کاملAlias Analysis for Java with Reference-Set Representation
We propose a flow-sensitive context-insensitive alias analysis in Java that is more efficient and precise than previous analyses in C++. For that, we propose a reference-set alias representation. Second, we present the propagation rules for the reference-set alias representation. Third, for the type determination, the type table is built with reference variables and all possible types of the re...
متن کامل